/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.1.x                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       pointVectorField;
    location    "0.01";
    object      pointDisplacement;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 1 0 0 0 0 0];

internalField   uniform (0 0 0);

boundaryField
{
    stationaryWalls
    {
        type            fixedValue;
        value           uniform (0 0 0);
    }
    movingBlock
    {
        type            uncoupledSixDoFRigidBodyDisplacement;
        centreOfMass    (0.5 0.5 0.5);
        momentOfInertia (0.1052 0.1052 0.1778);
        mass            9.6;
        velocity        (0 0 0);
        orientation     (1 0 0 0 1 0 0 0 1);
        acceleration    (0 0 0);
        angularMomentum (0 0 0);
        torque          (0 0 0);
        gravity         (0 0 0);
        rhoInf          1;
        report          on;
        restraints
        {
            topSpring
            {
                sixDoFRigidBodyMotionRestraint linearSpring;

                linearSpringCoeffs
                {
                    anchor          (0.5 0.5 1);
                    refAttachmentPt $centreOfMass;
                    stiffness       5000;
                    damping         50;
                    restLength      0.4;
                }
            }
        }
        constraints
        {
            maxIterations       500;

            fixedAxes1
            {
                sixDoFRigidBodyMotionConstraint fixedOrientation;
                tolerance           1e-6;
                relaxationFactor    1.0;
                fixedOrientationCoeffs {}
            }

            fixedLine1
            {
                sixDoFRigidBodyMotionConstraint fixedLine;
                tolerance           1e-6;
                relaxationFactor    1.0;
                fixedLineCoeffs
                {
                    refPoint      $centreOfMass;
                    direction     (0 0 1);
                }
            }
        }
        value           uniform (0 0 0);
    }
}


// ************************************************************************* //
